export default {
	//必填验证
	IsEmpty: function(str) {
		return (str == null || str.length < 1) ? false : true;
	},
	//验证整数 
	IsInteger: function(str) {
		var reg = /^-?\d+$/;
		return reg.test(str);
	},
	//验证非负整数 
	IsIntegerNotNagtive: function(str) {
		var reg = /^\d+$/;
		return reg.test(str);
	},
	//验证正整数  
	IsIntegerPositive: function(str) {
		var reg = /^[0-9]*[1-9][0-9]*$/;
		return reg.test(str);
	},
	//验证为固定位数的数字
	IsNumberLength: function(str, n) {
		var reg = new RegExp("^\\d{" + n + "}$"); // re为/^\dbl$/
		return reg.test(str);
	},
	//验证小数  
	IsDecimal: function(str) {
		var reg = /^([-+]?[1-9]\d*\.\d+|-?0\.\d*[1-9]\d*)$/;
		return reg.test(str);
	},
	//验证手机好号码
	IsPhone: function(phone) {
		return /^1[3456789]\d{9}$/.test(phone);
	},
	//中国手机号(严谨), 根据工信部2019年最新公布的手机号段
	IsPhone2: function(str) {
		var reg =
			/^(?:(?:\+|00)86)?1(?:(?:3[\d])|(?:4[5-7|9])|(?:5[0-3|5-9])|(?:6[5-7])|(?:7[0-8])|(?:8[\d])|(?:9[1|8|9]))\d{8}$/;
		return reg.test(str);
	},
	//帐号是否合法(字母开头，允许5-16字，允许字母数字下划线组合)
	Islegal: function(str) {
		var reg = /^[a-zA-Z][a-zA-Z0-9_]{4,15}$/;
		return reg.test(str);
	},
	//用户名正则，4到16位（字母，数字，下划线，减号）
	IsUser: function(str) {
		var reg = /^[a-zA-Z0-9_-]{4,16}$/;
		return reg.test(str);
	},
	//用户名正则，4到20位（中文字母，数字）
	IsUser2: function(str) {
		var reg = /[a-zA-Z0-9\u4e00-\u9fa5]{4,20}$/;
		return reg.test(str);
	},
	//只包含中文
	IsChinese: function(str) {
		var reg = /^[\u4E00-\u9FA5]/;
		return reg.test(str);
	},
	//纯数字  不能有+-.  
	IsNumber: function(str) {
		var reg = /^\d{1,}$/;
		return reg.test(str);
	},
	//银行卡号（10到30位, 覆盖对公/私账户, 参考[微信支付]
	IsBank: function(str) {
		var reg = /^[1-9]\d{9,29}$/;
		return reg.test(str);
	},
	//银行卡号（17到19位, 覆盖对公/私账户, 参考[微信支付]
	IsBank2: function(str) {
		var reg = /^[1-9]\d{16,18}$/;
		return reg.test(str);
	},
	//纯英文字母
	IsLetter: function(str) {
		var reg = /^[a-zA-Z]+$/;
		return reg.test(str);
	},
	//纯大写字母
	IsUppercaseLetter: function(str) {
		var reg = /^[A-Z]+$/;
		return reg.test(str);
	},
	//纯小写字母
	IsLowercaseLetter: function(str) {
		var reg = /^[a-z]+$/;
		return reg.test(str);
	},
	//身份证号码验证
	IsIDCard: function(str) {
		var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
		return reg.test(str);
	},
	//香港身份证 可用
	isHKCard: function(str) {
		var reg1 = /^[A-Z]\d{6}（[\dA]）$/; //大写
		var reg2 = /^[A-Z]\d{6}\([\dA]\)$/; //小写
		return reg1.test(str) || reg2.test(str);
	},
	//澳门身份证
	isAMCard: function(str) {
		var reg = /^[1|5|7][0-9]{6}\([0-9Aa]\)/;
		return reg.test(str);
	},
	//台湾身份证
	isTWCard: function(str) {
		var reg = /^[a-zA-Z][0-9]{9}$/;
		return reg.test(str);
	},
	//邮箱验证
	IsEmail: function(str) {
		var reg = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
		return reg.test(str);
	},
	//6位邮编检查
	IsZipCode: function(str) {
		var reg = /^[0-9]{6}$/;
		return reg.test(str);
	},
	//QQ号码
	IsQQ: function(str) {
		var reg = /^[1-9][0-9]{4,10}$/;
		return reg.test(str);
	},
	//微信号
	IsWeixin: function(str) {
		var reg = /^[a-zA-Z][-_a-zA-Z0-9]{5,19}$/;
		return reg.test(str);
	},
	//等值验证 - 密码
	IsSame: function(str1, str2) {
		return str1 == str2 ? true : false;
	},
	//字符串长度验证
	IsLength: function(str, min, max) {
		return (str.length <= max && str.length >= min) ? true : false;
	},
	// 密码 6-12位数字或者字母
	IsPassword: function(str) {
		var reg = /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,16}$/;
		return reg.test(str);
	},
	//密码验证 - 以字母开头，长度在6-18之间，只能包含字符、数字和下划线
	isPasswd: function(str) {
		var reg = /^[a-zA-Z]\w{5,17}$/;

		return reg.test(str);
	},
	//密码验证 - 只能输入6-20个字母、数字、下划线
	isPasswd1: function(str) {
		var reg = /^(\w){6,20}$/;
		return reg.test(str);
	},
	//密码验证 - 最少6位，包括至少1个大写字母，1个小写字母，1个数字，1个特殊字符
	isPasswd2: function(str) {
		var reg = /^.*(?=.{6,})(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*? ]).*$/;
		return reg.test(str);
	},
	// 数字或字母验证
	IsLetterNumber: function(str) {
		var reg = /^[0-9a-zA-Z]*$/;
		return reg.test(str);
	},
	//车牌号验证方法
	isVehicleNumber: function(vehicleNumber) {
		var xreg =
			/^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}(([0-9]{5}[DF]$)|([DF][A-HJ-NP-Z0-9][0-9]{4}$))/;
		var creg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]{1}$/;
		if (vehicleNumber.length == 7) {
			return creg.test(vehicleNumber);
		} else if (vehicleNumber.length == 8) {
			return xreg.test(vehicleNumber);
		} else {
			return false;
		}
	},
	// 金额 （含零），保留两位小数
	IsPrice: function(str) {
		var reg = /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/;
		return reg.test(str);
	},
}
